[INFO] fetching crate kiss-ai 0.4.4...
[INFO] testing kiss-ai-0.4.4 against master#f9988fefd3add01f414f52b414308e7872622fee for pr-155114
[INFO] extracting crate kiss-ai 0.4.4 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate kiss-ai 0.4.4
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate kiss-ai 0.4.4
[INFO] tweaked toml for crates.io crate kiss-ai 0.4.4 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate kiss-ai 0.4.4 on toolchain f9988fefd3add01f414f52b414308e7872622fee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate kiss-ai 0.4.4 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded streaming-iterator v0.1.9
[INFO] [stderr]   Downloaded serde_spanned v0.6.9
[INFO] [stderr]   Downloaded fa-leiden-cd v0.1.0
[INFO] [stderr]   Downloaded clap_lex v1.0.0
[INFO] [stderr]   Downloaded toml_datetime v0.6.11
[INFO] [stderr]   Downloaded globset v0.4.18
[INFO] [stderr]   Downloaded boxcar v0.2.14
[INFO] [stderr]   Downloaded fixedbitset v0.5.7
[INFO] [stderr]   Downloaded clap v4.5.60
[INFO] [stderr]   Downloaded tree-sitter v0.24.7
[INFO] [stderr]   Downloaded ignore v0.4.25
[INFO] [stderr]   Downloaded bitflags v2.11.0
[INFO] [stderr]   Downloaded tree-sitter-python v0.23.6
[INFO] [stderr]   Downloaded toml_edit v0.22.27
[INFO] [stderr]   Downloaded toml_write v0.1.2
[INFO] [stderr]   Downloaded bincode v1.3.3
[INFO] [stderr]   Downloaded clap_builder v4.5.60
[INFO] [stderr]   Downloaded petgraph v0.7.1
[INFO] [stderr]   Downloaded tree-sitter-language v0.1.7
[INFO] [stderr]   Downloaded toml v0.8.23
[INFO] [stderr]   Downloaded tempfile v3.26.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] be83af69bf2e9abbed6db1ecea20ad5bc9258096c7db777378cf4f77b22f972c
[INFO] running `Command { std: "docker" "start" "-a" "be83af69bf2e9abbed6db1ecea20ad5bc9258096c7db777378cf4f77b22f972c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "be83af69bf2e9abbed6db1ecea20ad5bc9258096c7db777378cf4f77b22f972c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "be83af69bf2e9abbed6db1ecea20ad5bc9258096c7db777378cf4f77b22f972c", kill_on_drop: false }`
[INFO] [stdout] be83af69bf2e9abbed6db1ecea20ad5bc9258096c7db777378cf4f77b22f972c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 83c42952e28ce9a020e3b582a9680849d1a9432190591e12906ccf662f2ebda5
[INFO] running `Command { std: "docker" "start" "-a" "83c42952e28ce9a020e3b582a9680849d1a9432190591e12906ccf662f2ebda5", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling tree-sitter-language v0.1.7
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling clap_builder v4.5.60
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling fixedbitset v0.5.7
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling boxcar v0.2.14
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling streaming-iterator v0.1.9
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling tree-sitter v0.24.7
[INFO] [stderr]    Compiling tree-sitter-python v0.23.6
[INFO] [stderr]    Compiling petgraph v0.7.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling clap v4.5.60
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling fa-leiden-cd v0.1.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling kiss-ai v0.4.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 46.41s
[INFO] running `Command { std: "docker" "inspect" "83c42952e28ce9a020e3b582a9680849d1a9432190591e12906ccf662f2ebda5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83c42952e28ce9a020e3b582a9680849d1a9432190591e12906ccf662f2ebda5", kill_on_drop: false }`
[INFO] [stdout] 83c42952e28ce9a020e3b582a9680849d1a9432190591e12906ccf662f2ebda5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c5be5023041a9b86731cf49fb774d7eb1e8913bc2125a8edb991d482a51c0889
[INFO] running `Command { std: "docker" "start" "-a" "c5be5023041a9b86731cf49fb774d7eb1e8913bc2125a8edb991d482a51c0889", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling tree-sitter-language v0.1.7
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling tree-sitter-python v0.23.6
[INFO] [stderr]    Compiling tree-sitter v0.24.7
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling clap_builder v4.5.60
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling boxcar v0.2.14
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling fixedbitset v0.5.7
[INFO] [stderr]    Compiling streaming-iterator v0.1.9
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling petgraph v0.7.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling tempfile v3.26.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling clap v4.5.60
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling fa-leiden-cd v0.1.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling kiss-ai v0.4.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 3m 06s
[INFO] running `Command { std: "docker" "inspect" "c5be5023041a9b86731cf49fb774d7eb1e8913bc2125a8edb991d482a51c0889", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c5be5023041a9b86731cf49fb774d7eb1e8913bc2125a8edb991d482a51c0889", kill_on_drop: false }`
[INFO] [stdout] c5be5023041a9b86731cf49fb774d7eb1e8913bc2125a8edb991d482a51c0889
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 8786f0c1d0294714f93c89e851a37f7e01aa3f64b4fa725ccb8cc4eb3a71b644
[INFO] running `Command { std: "docker" "start" "-a" "8786f0c1d0294714f93c89e851a37f7e01aa3f64b4fa725ccb8cc4eb3a71b644", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 0.18s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kiss-b7fb04839d7f0861)
[INFO] [stdout] 
[INFO] [stdout] running 355 tests
[INFO] [stdout] test check_cache::tests::test_cached_violation_roundtrip ... ok
[INFO] [stdout] test check_cache::tests::test_cached_definition_roundtrip ... ok
[INFO] [stdout] test cli_output::tests::test_count_rs_unreferenced_empty ... ok
[INFO] [stdout] test cli_output::tests::test_count_py_unreferenced_empty ... ok
[INFO] [stdout] test cli_output::tests::test_file_coverage_map_computes_per_file_pct ... ok
[INFO] [stdout] test check_universe_cache::tests::test_cached_coverage_item_into_tuple ... ok
[INFO] [stdout] test check_universe_cache::tests::test_full_cache_struct_smoke ... ok
[INFO] [stdout] test check_cache::tests::test_cache_dir_smoke ... ok
[INFO] [stdout] test check_cache::tests::test_cached_chunk_roundtrip ... ok
[INFO] [stdout] test cli_output::tests::test_print_coverage_gate_failure_no_panic ... ok
[INFO] [stdout] test cli_output::tests::test_print_duplicates_empty ... ok
[INFO] [stdout] test cli_output::tests::static_coverage_touch_gate_90 ... ok
[INFO] [stdout] test config::tests::static_coverage_touch_validate_keys ... ok
[INFO] [stdout] test config::tests::test_apply_language_sections ... ok
[INFO] [stdout] test cli_output::tests::test_print_violations_empty ... ok
[INFO] [stdout] test config::tests::test_config_error_display ... ok
[INFO] [stdout] test config::tests::test_helpers ... ok
[INFO] [stdout] test config::tests::test_unknown_key_returns_error ... ok
[INFO] [stdout] test config::tests::test_merge_and_apply ... ok
[INFO] [stdout] test config::tests::test_thresholds_section_accepts_boolean_parameters ... ok
[INFO] [stdout] test config::tests::test_unknown_section_returns_error ... ok
[INFO] [stdout] test config_gen::config_gates::test_config_generation ... ok
[INFO] [stdout] test counts::tests::static_coverage_touch_py_threshold_helpers ... ok
[INFO] [stdout] test config_gen::config_gates::test_config_keys ... ok
[INFO] [stdout] test config_gen::config_gates::test_defaults_appenders ... ok
[INFO] [stdout] test counts::tests::test_check_file_metrics ... ok
[INFO] [stdout] test counts::tests::test_check_file_metrics_direct ... ok
[INFO] [stdout] test counts::tests::test_check_function_metrics ... ok
[INFO] [stdout] test cli_output::tests::test_print_no_files_message_no_panic ... ok
[INFO] [stdout] test counts::tests::test_check_function_metrics_tail_smoke ... ok
[INFO] [stdout] test counts::tests::test_recursion_enum ... ok
[INFO] [stdout] test config_gen::config_gates::test_merge_config_toml_smoke ... ok
[INFO] [stdout] test config_gen::config_gates::test_write_mimic_config_smoke ... ok
[INFO] [stdout] test counts::tests::test_analyze_file_no_violations ... ok
[INFO] [stdout] test defaults::tests::test_default_config_toml_parses ... ok
[INFO] [stdout] test counts::tests::test_analyze_class_node ... ok
[INFO] [stdout] test counts::tests::test_violation_helper_from_counts ... ok
[INFO] [stdout] test counts::tests::test_analyze_node_function ... ok
[INFO] [stdout] test counts::tests::test_analyze_file_with_violation ... ok
[INFO] [stdout] test config_gen::config_gates::static_coverage_touch_infer_gate_helpers ... ok
[INFO] [stdout] test discovery::tests::test_always_ignored_includes_env_dir ... ok
[INFO] [stdout] test defaults::tests::test_defaults_are_reasonable ... ok
[INFO] [stdout] test counts::tests::test_analyze_node ... ok
[INFO] [stdout] test config::tests::test_validation ... ok
[INFO] [stdout] test counts::tests::test_violation_builder ... ok
[INFO] [stdout] test counts::tests::test_analyze_file_with_statement_count_helper ... ok
[INFO] [stdout] test discovery::tests::test_language_extension ... ok
[INFO] [stdout] test discovery::tests::test_gather_files_by_lang_empty_input ... ok
[INFO] [stdout] test discovery::tests::test_should_ignore ... ok
[INFO] [stdout] test discovery::tests::test_has_ignored_prefix ... ok
[INFO] [stdout] test discovery::tests::test_process_source_entry_and_ext_entry ... ok
[INFO] [stdout] test discovery::tests::test_language_from_path ... ok
[INFO] [stdout] test discovery::tests::test_should_ignore_does_not_match_filenames ... ok
[INFO] [stdout] test duplication::tests::test_cmp_chunk_key_and_min_chunk ... ok
[INFO] [stdout] test discovery::tests::test_source_file_struct ... ok
[INFO] [stdout] test duplication::tests::test_cluster_from_pairs ... ok
[INFO] [stdout] test discovery::tests::test_find_rust_files ... ok
[INFO] [stdout] test discovery::tests::test_find_python_files_uppercase_extension ... ok
[INFO] [stdout] test duplication::tests::test_rust_duplication ... ok
[INFO] [stdout] test discovery::tests::test_find_files_empty_dir ... ok
[INFO] [stdout] test duplication::tests::test_extract_chunks_for_duplication_direct ... ok
[INFO] [stdout] test duplication::tests::test_cluster_duplicates_from_chunks_smoke ... ok
[INFO] [stdout] test config_gen::config_gates::test_infer_gate_config_orphan_module_enabled ... ok
[INFO] [stdout] test duplication::tests::test_python_duplication ... ok
[INFO] [stdout] test config_gen::config_gates::test_infer_gate_config_no_orphans_module_enabled ... ok
[INFO] [stdout] test discovery::tests::test_kissignore_file ... ok
[INFO] [stdout] test discovery::tests::test_find_python_files ... ok
[INFO] [stdout] test gate_config::tests::test_gate_config_merge_from_toml ... ok
[INFO] [stdout] test gate_config::tests::test_get_f64 ... ok
[INFO] [stdout] test graph::tests::test_cycle_size_violation_suggestion_does_not_claim_unimplemented_min_cut ... ok
[INFO] [stdout] test gate_config::tests::test_min_similarity_integer_accepted ... ok
[INFO] [stdout] test graph::tests::test_from_dot_import_name_is_dependency_candidate ... ok
[INFO] [stdout] test duplication::tests::test_structs_and_helpers ... ok
[INFO] [stdout] test gate_config::tests::static_coverage_touch_gate_parsers ... ok
[INFO] [stdout] test graph::tests::test_from_import_does_not_create_edges_to_imported_names ... ok
[INFO] [stdout] test gate_config::tests::test_get_usize ... ok
[INFO] [stdout] test graph::tests::test_dotted_import_does_not_create_edges_to_middle_segments ... ok
[INFO] [stdout] test graph::tests::static_coverage_touch_graph_helpers ... ok
[INFO] [stdout] test graph::tests::test_from_import_adds_submodule_candidate_when_internal ... ok
[INFO] [stdout] test graph::tests::test_build_dependency_graph_creates_edge_for_from_dot_import ... ok
[INFO] [stdout] test discovery::tests::test_find_source_files ... ok
[INFO] [stdout] test graph::tests::test_graph_imports_and_cycles ... ok
[INFO] [stdout] test graph::tests::test_indirect_deps_in_cycle ... ok
[INFO] [stdout] test graph::tests::test_is_test_module_singular_test_dir ... ok
[INFO] [stdout] test graph::tests::test_push_dotted_segments ... ok
[INFO] [stdout] test graph::tests::test_qualified_and_bare_module_names ... ok
[INFO] [stdout] test graph::tests::test_resolve_import ... ok
[INFO] [stdout] test graph::tests::test_helpers_imports_and_complexity ... ok
[INFO] [stdout] test graph::tests::test_test_importers_of_returns_test_modules_that_import_target ... ok
[INFO] [stdout] test layout_cycles::tests::test_analyze_cycles_multiple_cycles ... ok
[INFO] [stdout] test graph::tests::test_qualified_module_name_includes_full_package_path ... ok
[INFO] [stdout] test layout_cycles::tests::test_analyze_cycles_no_cycles ... ok
[INFO] [stdout] test graph::tests::test_touch_importinfo_and_push_import_name_segments ... ok
[INFO] [stdout] test graph::tests::test_touch_dynamic_import_helpers_for_static_coverage ... ok
[INFO] [stdout] test layout_cycles::tests::test_cycle_break_reason_does_not_claim_unimplemented_min_cut ... ok
[INFO] [stdout] test graph::tests::test_type_checking_imports_included_in_graph ... ok
[INFO] [stdout] test layout_cycles::tests::test_find_deterministic_break_edge_picks_alphabetically_first ... ok
[INFO] [stdout] test layout_cycles::tests::test_find_deterministic_break_edge_self_loop_returns_edge ... ok
[INFO] [stdout] test layout_cycles::tests::test_analyze_cycles_returns_suggestions ... ok
[INFO] [stdout] test layout_cycles::tests::test_cycle_break_suggestion_clone_and_eq ... ok
[INFO] [stdout] test layout_cycles::tests::test_find_deterministic_break_edge_three_node_cycle ... ok
[INFO] [stdout] test layout_cycles::tests::test_find_nontrivial_sccs_detects_cycle ... ok
[INFO] [stdout] test layout_cycles::tests::test_find_nontrivial_sccs_no_cycle ... ok
[INFO] [stdout] test layout_cycles::tests::test_layout_cycle_analysis_default ... ok
[INFO] [stdout] test layout_cycles::tests::test_is_nontrivial_cycle_empty ... ok
[INFO] [stdout] test layout_layers::tests::test_build_condensation_removes_intra_scc_edges ... ok
[INFO] [stdout] test layout_layers::tests::test_build_condensation_single_node ... ok
[INFO] [stdout] test layout_layers::tests::test_complex_graph_with_multiple_sccs ... ok
[INFO] [stdout] test layout_layers::tests::test_all_assignments ... ok
[INFO] [stdout] test layout_layers::tests::test_cycle_depends_on_foundation ... ok
[INFO] [stdout] test layout_layers::tests::test_build_condensation_preserves_edges ... ok
[INFO] [stdout] test layout_layers::tests::test_cycle_with_dependency ... ok
[INFO] [stdout] test layout_layers::tests::test_empty_graph ... ok
[INFO] [stdout] test discovery::tests::test_find_files_nested ... ok
[INFO] [stdout] test layout_layers::tests::test_compute_layer_for_node_cached ... ok
[INFO] [stdout] test layout_layers::tests::test_diamond_dependency ... ok
[INFO] [stdout] test layout_layers::tests::test_layer_for_unknown_module ... ok
[INFO] [stdout] test layout_layers::tests::static_coverage_touch_layer_internals ... ok
[INFO] [stdout] test discovery::tests::test_find_files_by_extension ... ok
[INFO] [stdout] test layout_layers::tests::test_deep_linear_chain_no_stack_overflow ... ok
[INFO] [stdout] test discovery::tests::test_find_source_files_with_ignore ... ok
[INFO] [stdout] test layout_layers::tests::test_multiple_foundations ... ok
[INFO] [stdout] test layout_layers::tests::test_single_node_no_edges ... ok
[INFO] [stdout] test layout_layers::tests::test_three_node_cycle ... ok
[INFO] [stdout] test layout_layers::tests::test_two_node_cycle ... ok
[INFO] [stdout] test layout_output::tests::test_default_layer_name_application ... ok
[INFO] [stdout] test layout_output::tests::test_default_layer_name_domain ... ok
[INFO] [stdout] test layout_output::tests::test_default_layer_name_foundation ... ok
[INFO] [stdout] test layout_output::tests::test_format_cycles_empty ... ok
[INFO] [stdout] test layout_output::tests::test_default_layer_name_two_layers ... ok
[INFO] [stdout] test layout_output::tests::test_format_cycles_multiple ... ok
[INFO] [stdout] test layout_output::tests::test_format_layers_single_layer ... ok
[INFO] [stdout] test layout_output::tests::test_format_markdown_empty_analysis ... ok
[INFO] [stdout] test layout_layers::tests::test_multiple_isolated_nodes ... ok
[INFO] [stdout] test layout_output::tests::test_format_markdown_full_example ... ok
[INFO] [stdout] test layout_output::tests::static_coverage_touch_format_helpers ... ok
[INFO] [stdout] test layout_output::tests::test_format_layers_empty ... ok
[INFO] [stdout] test layout_layers::tests::test_linear_chain ... ok
[INFO] [stdout] test layout_cycles::tests::test_find_nontrivial_sccs_self_loop ... ok
[INFO] [stdout] test layout_output::tests::test_default_layer_name_intermediate ... ok
[INFO] [stdout] test layout_output::tests::test_format_markdown_with_cycles ... ok
[INFO] [stdout] test layout_output::tests::test_format_markdown_with_layers ... ok
[INFO] [stdout] test layout_output::tests::test_format_markdown_with_what_if ... ok
[INFO] [stdout] test layout_output::tests::test_format_summary_cross_deps_only ... ok
[INFO] [stdout] test layout_output::tests::test_format_summary_violations_only ... ok
[INFO] [stdout] test layout_output::tests::test_format_what_if_empty_summary ... ok
[INFO] [stdout] test layout_output::tests::test_format_what_if_none ... ok
[INFO] [stdout] test layout_output::tests::test_layout_metrics_default ... ok
[INFO] [stdout] test layout_output::tests::test_layout_metrics_equality ... ok
[INFO] [stdout] test layout_output::tests::test_summary_singular_forms ... ok
[INFO] [stdout] test layout_output::tests::test_three_layer_structure ... ok
[INFO] [stdout] test layout_output::tests::test_format_summary_cycles_only ... ok
[INFO] [stdout] test layout_output::tests::test_what_if_analysis_equality ... ok
[INFO] [stdout] test layout_output::tests::test_what_if_analysis_default ... ok
[INFO] [stdout] test minhash::tests::test_add_bucket_pairs ... ok
[INFO] [stdout] test minhash::tests::test_add_bucket_pairs_single ... ok
[INFO] [stdout] test minhash::tests::test_generate_shingles_zero_size_returns_empty ... ok
[INFO] [stdout] test minhash::tests::test_estimate_similarity_is_symmetric ... ok
[INFO] [stdout] test minhash::tests::test_lsh_candidates ... ok
[INFO] [stdout] test minhash::tests::test_minhash_identical ... ok
[INFO] [stdout] test minhash::tests::test_minhash_different ... ok
[INFO] [stdout] test minhash::tests::test_hash_band ... ok
[INFO] [stdout] test minhash::tests::test_minhash_signature_struct ... ok
[INFO] [stdout] test parsing::tests::test_create_parser ... ok
[INFO] [stdout] test parsing::tests::test_parse_error_display ... ok
[INFO] [stdout] test parsing::tests::test_parse_error_display_fmt ... ok
[INFO] [stdout] test minhash::tests::test_normalize_code ... ok
[INFO] [stdout] test parsing::tests::test_parse_error_from_io_error ... ok
[INFO] [stdout] test minhash::tests::test_shingles ... ok
[INFO] [stdout] test parsing::tests::test_parse_file_nonexistent ... ok
[INFO] [stdout] test py_imports::tests::static_coverage_touch_import_collectors ... ok
[INFO] [stdout] test py_imports::tests::test_collect_import_names_direct ... ok
[INFO] [stdout] test parsing::tests::test_parsed_file_struct ... ok
[INFO] [stdout] test py_imports::tests::test_wildcard_import_counted ... ok
[INFO] [stdout] test py_imports::tests::test_is_type_checking_block_direct ... ok
[INFO] [stdout] test py_imports::tests::test_type_checking_imports_excluded ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_import_statements_not_counted ... ok
[INFO] [stdout] test parsing::tests::test_parse_files_multiple ... ok
[INFO] [stdout] test py_imports::tests::test_import_counting ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_is_interface_token ... ok
[INFO] [stdout] test parsing::tests::test_parse_file_success ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::static_coverage_touch_body_and_file_walkers ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_touch_analyze_body_helpers_for_static_coverage ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_boolean_params_count ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_file_types_split ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_params_and_decorators ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_touch_file_count_helpers_for_static_coverage ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_statements_and_branches ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_compute_function_metrics_self_not_counted ... ok
[INFO] [stdout] test rule_defs::rule_defs_test::test_rules_and_categories ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_touch_return_helpers_for_static_coverage ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_typed_kwargs_not_counted ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_touch_statement_counters_for_static_coverage ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_typed_star_args_counts_correctly ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_return_values ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_typed_star_args_with_leading_positional ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_variables_and_nesting ... ok
[INFO] [stdout] test py_metrics::py_metrics_test::tests::test_untyped_star_args_counts_correctly ... ok
[INFO] [stdout] test rust_counts::tests::analyze_skips_cfg_test_mod_for_per_function_rules ... ok
[INFO] [stdout] test rust_counts::tests::analyze_nested_mod_without_cfg_still_checked ... ok
[INFO] [stdout] test rust_counts::tests::test_analyzer_checks ... ok
[INFO] [stdout] test rust_fn_metrics::tests::static_coverage_touch_accumulate_and_cfg_scan ... ok
[INFO] [stdout] test rust_counts::tests::test_analyzer_basic ... ok
[INFO] [stdout] test rust_counts::tests::test_analyzer_impl_and_fn ... ok
[INFO] [stdout] test rust_counts::tests::test_helpers ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_cfg_not_test_mod_included_in_metrics ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_cfg_test_mod_compound_expression_skipped ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_count_non_doc_attrs_excludes_doc ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_count_use_names ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_double_negation_not_not_test_is_test_code ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_file_metrics ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_inner_fn_statements_not_counted_in_outer ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_visitor ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_function_metrics ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_inner_fn_branches_not_counted_in_outer ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_inner_fn_locals_not_counted_in_outer ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_file_metrics_nested_mod ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_structs ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_is_cfg_test_mod_semantics ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_is_bool_param ... ok
[INFO] [stdout] test rust_fn_metrics::tests::test_use_statements_in_function_not_counted ... ok
[INFO] [stdout] test rust_graph::tests::extracts_path_use ... ok
[INFO] [stdout] test rust_graph::tests::handles_grouped_uses ... ok
[INFO] [stdout] test rust_graph::tests::test_qualified_rust_module_name ... ok
[INFO] [stdout] test rust_graph::tests::extracts_impl_method_scoped_use ... ok
[INFO] [stdout] test rust_graph::tests::test_touch_private_helpers_for_static_coverage ... ok
[INFO] [stdout] test rust_graph::tests::extracts_multiple_uses ... ok
[INFO] [stdout] test rust_graph::tests::test_build_rust_dependency_graph ... ok
[INFO] [stdout] test rust_parsing::tests::parses_rust_file_with_struct_and_impl ... ok
[INFO] [stdout] test rust_graph::tests::extracts_function_scoped_use ... ok
[INFO] [stdout] test rust_graph::tests::extracts_simple_use ... ok
[INFO] [stdout] test rust_graph::tests::extracts_inline_module_use ... ok
[INFO] [stdout] test rust_parsing::tests::returns_error_for_nonexistent_file ... ok
[INFO] [stdout] test rust_parsing::tests::test_rust_parse_error_display_fmt ... ok
[INFO] [stdout] test rust_parsing::tests::test_parse_rust_files ... ok
[INFO] [stdout] test rust_graph::tests::test_same_stem_different_dirs_no_collision ... ok
[INFO] [stdout] test rust_graph::tests::mod_decls_prefer_child_module_under_same_parent ... ok
[INFO] [stdout] test rust_parsing::tests::parses_simple_rust_file ... ok
[INFO] [stdout] test rust_parsing::tests::test_parsed_rust_file_struct ... ok
[INFO] [stdout] test rust_graph::tests::test_collect_use_paths ... ok
[INFO] [stdout] test rust_parsing::tests::returns_error_for_invalid_rust ... ok
[INFO] [stdout] test config_gen::config_gates::test_collection ... ok
[INFO] [stdout] test rust_parsing::tests::test_rust_parse_error_enum ... ok
[INFO] [stdout] test rust_test_refs::tests::test_collect_per_test_usage_from_items_direct ... ok
[INFO] [stdout] test rust_test_refs::tests::test_collect_rust_references ... ok
[INFO] [stdout] test rust_test_refs::tests::test_collect_rust_references_for_fn_direct ... ok
[INFO] [stdout] test rust_test_refs::tests::test_coverage_checks ... ok
[INFO] [stdout] test rust_test_refs::tests::test_analyze_refs ... ok
[INFO] [stdout] test rust_test_refs::tests::test_insert_path_segments ... ok
[INFO] [stdout] test rust_test_refs::tests::test_is_external_crate_common_deps ... ok
[INFO] [stdout] test rust_test_refs::tests::test_is_binary_entry_point ... ok
[INFO] [stdout] test rust_test_refs::tests::test_file_detection_and_helpers ... ok
[INFO] [stdout] test rust_test_refs::tests::test_touch_for_static_test_coverage ... ok
[INFO] [stdout] test rust_test_refs::tests::test_definitions_and_references ... ok
[INFO] [stdout] test rust_test_refs::tests::test_trivial_binary_main_detection ... ok
[INFO] [stdout] test rust_test_refs::tests::test_same_name_different_files_disambiguated_by_module ... ok
[INFO] [stdout] test rust_test_refs::tests::test_impl_method_covered_when_type_referenced ... ok
[INFO] [stdout] test rust_test_refs::tests::test_trivial_binary_main_rejects_qualified_call_with_unvetted_arguments ... ok
[INFO] [stdout] test rust_test_refs::tests::test_visit_macro_tokens_direct ... ok
[INFO] [stdout] test rust_test_refs::tests::test_trivial_binary_main_rejects_method_call_with_unvetted_arguments ... ok
[INFO] [stdout] test rust_test_refs::tests::test_visitor_and_macros ... ok
[INFO] [stdout] test rust_units::rust_units_test::test_code_unit_visitor_struct ... ok
[INFO] [stdout] test rust_units::rust_units_test::extracts_function ... ok
[INFO] [stdout] test rust_units::rust_units_test::test_estimate_block_lines ... ok
[INFO] [stdout] test rust_units::rust_units_test::includes_module_for_file ... ok
[INFO] [stdout] test rust_units::rust_units_test::test_visit_item_directly ... ok
[INFO] [stdout] test rust_units::rust_units_test::extracts_struct_and_methods ... ok
[INFO] [stdout] test rust_units::rust_units_test::extracts_enum ... ok
[INFO] [stdout] test shrink::tests::test_parse_target_arg ... ok
[INFO] [stdout] test shrink::tests::test_check_shrink_constraints_with_violations ... ok
[INFO] [stdout] test shrink::tests::test_check_shrink_constraints_no_violations ... ok
[INFO] [stdout] test rust_test_refs::tests::test_trivial_main_skipped_in_definitions ... ok
[INFO] [stdout] test shrink::tests::test_shrink_violation_display ... ok
[INFO] [stdout] test stats::tests::test_collection_rust_push_and_items ... ok
[INFO] [stdout] test stats::tests::test_cycle_size_is_per_module_distribution ... ok
[INFO] [stdout] test stats::tests::test_graph_metrics_exclude_external_nodes_from_distributions ... ok
[INFO] [stdout] test stats::tests::test_metric_values ... ok
[INFO] [stdout] test shrink::tests::test_shrink_target_get ... ok
[INFO] [stdout] test stats::tests::test_push_py_fn_metrics ... ok
[INFO] [stdout] test stats::tests::test_stats_helpers ... ok
[INFO] [stdout] test stats_detailed::tests::static_coverage_touch_module_id_and_rust_push ... ok
[INFO] [stdout] test stats_detailed::tests::test_collect_detailed_from_items ... ok
[INFO] [stdout] test stats::tests::test_collection_rust_and_py_parsing ... ok
[INFO] [stdout] test shrink::tests::test_shrink_state_save_load ... ok
[INFO] [stdout] test stats::tests::test_generate_config_toml_includes_boolean_parameters ... ok
[INFO] [stdout] test stats_detailed::tests::test_collect_detailed_from_node ... ok
[INFO] [stdout] test stats_detailed::tests::test_file_unit_metrics_uses_graph_module_id_for_path ... ok
[INFO] [stdout] test stats_detailed::tests::test_get_impl_name ... ok
[INFO] [stdout] test stats_detailed::tests::test_format_detailed_table ... ok
[INFO] [stdout] test stats_detailed::tests::test_collect_detailed_rs_empty ... ok
[INFO] [stdout] test stats_detailed::tests::test_module_name_from_path ... ok
[INFO] [stdout] test stats::tests::test_graph_metrics ... ok
[INFO] [stdout] test symbol_mv::plan::plan_coverage::touch_private_plan_helpers_for_coverage_gate ... ok
[INFO] [stdout] test stats_detailed::tests::test_truncate ... ok
[INFO] [stdout] test symbol_mv::symbol_mv_coverage::touch_symbol_mv_public_api ... ok
[INFO] [stdout] test shrink::tests::test_shrink_target_roundtrip ... ok
[INFO] [stdout] test stats_detailed::tests::test_collect_detailed_py_empty ... ok
[INFO] [stdout] test symbol_mv_support::lex::lex_coverage::touch_lex_helpers_for_coverage_gate ... ok
[INFO] [stdout] test stats::tests::test_metric_registry ... ok
[INFO] [stdout] test symbol_mv_support::reference::reference_coverage::touch_reference_helpers_for_coverage_gate ... ok
[INFO] [stdout] test symbol_mv_support::identifiers::identifiers_coverage::identifier_helpers_smoke ... ok
[INFO] [stdout] test symbol_mv_support::definition::definition_coverage::find_definition_span_python_class_method ... ok
[INFO] [stdout] test symbol_mv_support::edits::edits_coverage::rename_definition_text_replaces_name ... ok
[INFO] [stdout] test symbol_mv_support::definition::definition_coverage::brace_and_impl_helpers ... ok
[INFO] [stdout] test symbol_mv_support::run_mv::run_mv_coverage::touch_run_mv_helpers_for_coverage_gate ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::basics_detect_and_parse ... ok
[INFO] [stdout] test symbol_mv_support::definition::definition_coverage::find_definition_span_rust_impl_fn ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::collect_edits_roundtrip_smoke ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::find_rust_definition_span_finds_fn ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::definition_span_contains ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::apply_plan_transactional_writes ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::build_move_edits_inserts_at_dest ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::find_python_definition_span_finds_method ... ok
[INFO] [stdout] test symbol_mv_support::transaction::transaction_coverage::touch_transaction_helpers_for_coverage_gate ... ok
[INFO] [stdout] test symbol_mv_support::transaction::transaction_coverage::apply_plan_transactional_success_writes_file ... ok
[INFO] [stdout] test test_refs::tests::test_collect_definitions_skips_test_functions ... ok
[INFO] [stdout] test test_refs::tests::test_class_import_without_use_not_covered ... ok
[INFO] [stdout] test test_refs::tests::test_abstract_methods_excluded_from_coverage ... ok
[INFO] [stdout] test test_refs::tests::test_has_test_framework_import ... ok
[INFO] [stdout] test test_refs::tests::test_coverage_map_one_function_covered_by_two_tests ... ok
[INFO] [stdout] test test_refs::tests::test_file_stem_collision_no_false_positive ... ok
[INFO] [stdout] test test_refs::tests::test_disambiguate_by_graph_when_refs_tie ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::run_mv_inner_errors_on_empty_plan ... ok
[INFO] [stdout] test test_refs::tests::test_protocol_class_excluded_from_coverage ... ok
[INFO] [stdout] test test_refs::tests::test_nested_functions_not_tracked_for_coverage ... ok
[INFO] [stdout] test test_refs::tests::test_relative_import_falls_back_to_flat_refs ... ok
[INFO] [stdout] test test_refs::tests::test_same_name_different_files_disambiguated_by_module ... ok
[INFO] [stdout] test test_refs::tests::test_import_with_call_is_covered ... ok
[INFO] [stdout] test test_refs::tests::test_import_without_call_not_covered ... ok
[INFO] [stdout] test test_refs::tests::test_is_in_test_directory ... ok
[INFO] [stdout] test test_refs::tests::test_is_test_file_by_name ... ok
[INFO] [stdout] test test_refs::tests::test_import_module_without_from_falls_back ... ok
[INFO] [stdout] test symbol_mv_support::symbol_mv_support_test::gather_candidate_files_respects_language ... ok
[INFO] [stdout] test units::tests::test_code_unit_kind_as_str ... ok
[INFO] [stdout] test units::tests::test_code_unit_kind_eq ... ok
[INFO] [stdout] test test_refs::tests::test_same_stem_as_function_name_different_dirs ... ok
[INFO] [stdout] test units::tests::test_extract_class ... ok
[INFO] [stdout] test units::tests::test_extract_from_node_direct ... ok
[INFO] [stdout] test units::tests::test_extract_function ... ok
[INFO] [stdout] test units::tests::static_coverage_touch_count_from_node ... ok
[INFO] [stdout] test units::tests::test_code_unit_positions ... ok
[INFO] [stdout] test units::tests::test_code_unit_kind_all_variants ... ok
[INFO] [stdout] test units::tests::test_code_unit_struct ... ok
[INFO] [stdout] test units::tests::test_count_matches_extract_len ... ok
[INFO] [stdout] test test_refs::tests::test_is_test_file_requires_naming_pattern ... ok
[INFO] [stdout] test units::tests::test_extract_async_function ... ok
[INFO] [stdout] test violation::tests::test_violation_builder_default_line ... ok
[INFO] [stdout] test units::tests::test_extract_method ... ok
[INFO] [stdout] test units::tests::test_extract_module ... ok
[INFO] [stdout] test units::tests::test_get_child_by_field ... ok
[INFO] [stdout] test units::tests::test_nested_function_is_function ... ok
[INFO] [stdout] test violation::tests::test_violation_builder ... ok
[INFO] [stdout] test units::tests::test_extract_from_node_recursion ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/kiss-78b0b79bd9e03a5b)
[INFO] [stdout] test violation::tests::test_violation_suggestion_is_actionable ... ok
[INFO] [stdout] test violation::tests::test_violation_has_all_required_fields ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 355 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 113 tests
[INFO] [stdout] test analyze::coverage::coverage_touch::struct_sizes_for_gate ... ok
[INFO] [stdout] test analyze::coverage::coverage_touch::test_build_viols_after_merge_empty ... ok
[INFO] [stdout] test analyze::coverage::coverage_touch::test_build_viols_after_merge_with_unreferenced ... ok
[INFO] [stdout] test analyze::entry::entry_touch::empty_repo_matches_default_metrics ... ok
[INFO] [stdout] test analyze::finalize::finalize_touch::struct_size_for_gate ... ok
[INFO] [stdout] test analyze::graph_api::graph_api_touch::struct_sizes_for_gate ... ok
[INFO] [stdout] test analyze::graph_api::graph_for_path_extension_tests::graph_for_path_accepts_uppercase_py_and_rs_extensions ... ok
[INFO] [stdout] test analyze::parallel::parallel_touch::struct_sizes_for_gate ... ok
[INFO] [stdout] test analyze::params::params_coverage_touch::touch_param_structs_for_kiss_gate ... ok
[INFO] [stdout] test analyze::dry::dry_helpers_test::empty_inputs_smoke ... ok
[INFO] [stdout] test analyze::dry::dry_helpers_test::test_dry_run_params_struct ... ok
[INFO] [stdout] test analyze::tests_touch::test_touch_for_static_test_coverage_part_c ... ok
[INFO] [stdout] test analyze::tests_smoke::test_print_all_results ... ok
[INFO] [stdout] test analyze::tests_smoke::test_structs ... ok
[INFO] [stdout] test analyze::tests_coverage::test_gate_helpers_and_empty_analysis ... ok
[INFO] [stdout] test analyze_cache::tests::test_cached_helpers_smoke ... ok
[INFO] [stdout] test analyze::tests_smoke::test_print_functions_and_helpers ... ok
[INFO] [stdout] test analyze::tests_touch::test_touch_for_static_test_coverage_part_a ... ok
[INFO] [stdout] test analyze::tests_touch::test_touch_for_static_test_coverage_part_b ... ok
[INFO] [stdout] test bin_cli::config_session::tests::test_run_init_command_existing_config ... ok
[INFO] [stdout] test analyze::tests_coverage::test_coverage_gate_per_file_fails_when_one_file_below_threshold ... ok
[INFO] [stdout] test analyze::tests_smoke::test_detect_duplicates ... ok
[INFO] [stdout] test analyze_parse::tests::test_parse_all_empty ... ok
[INFO] [stdout] test analyze_parse::tests::test_touch_for_coverage ... ok
[INFO] [stdout] test analyze_parse::tests::test_parse_all_with_files ... ok
[INFO] [stdout] test analyze_cache::tests::test_touch_analyze_cache_privates_for_static_coverage ... ok
[INFO] [stdout] test bin_cli::config_session::tests::test_run_init_command_file_not_dir ... ok
[INFO] [stdout] test bin_cli::config_session::tests::test_run_init_command_nonexistent_path ... ok
[INFO] [stdout] test bin_cli::dispatch::dispatch_coverage::touch_dispatch_entrypoints_for_coverage_gate ... ok
[INFO] [stdout] test bin_cli::dispatch::dispatch_coverage::touch_dispatch_option_structs_for_coverage_gate ... ok
[INFO] [stdout] test bin_cli::gates_core::test_cli_and_commands ... ok
[INFO] [stdout] test bin_cli::gates_core::test_run_entrypoint_exists ... ok
[INFO] [stdout] test bin_cli::shrink_analysis_types::shrink_analysis_types_coverage::touch_analysis_arg_types ... ok
[INFO] [stdout] test layout::tests::static_coverage_touch_derive_project_name ... ok
[INFO] [stdout] test bin_cli::gates_shrink::test_shrink_check_without_state ... ok
[INFO] [stdout] test bin_cli::shrink_types::shrink_types_coverage::touch_shrink_context_types ... ok
[INFO] [stdout] test layout::tests::test_analyze_layout_project_name_custom ... ok
[INFO] [stdout] test bin_cli::gates_shrink::test_shrink_commands_parse ... ok
[INFO] [stdout] test bin_cli::gates_shrink::test_config_provenance ... ok
[INFO] [stdout] test bin_cli::gates_core::test_language_and_config ... ok
[INFO] [stdout] test bin_cli::gates_shrink::static_coverage_touch_main_entrypoints ... ok
[INFO] [stdout] test bin_cli::gates_shrink::test_show_tests_cli_parse ... ok
[INFO] [stdout] test bin_cli::gates_core::test_stats_top_helpers ... ok
[INFO] [stdout] test layout::tests::test_analyze_layout_project_name_default ... ok
[INFO] [stdout] test layout::tests::test_analyze_layout_with_python_files ... ok
[INFO] [stdout] test layout::tests::test_analyze_layout_with_rust_files ... ok
[INFO] [stdout] test layout::tests::test_clone_graph_without_edges_removes_specified ... ok
[INFO] [stdout] test layout::tests::test_compute_what_if_overlapping_cycles ... ok
[INFO] [stdout] test layout::tests::test_build_py_graph_empty ... ok
[INFO] [stdout] test layout::tests::test_build_rs_graph_empty ... ok
[INFO] [stdout] test layout::tests::test_clone_graph_without_edges_handles_empty_skip ... ok
[INFO] [stdout] test layout::tests::test_count_cross_directory_deps ... ok
[INFO] [stdout] test layout::tests::test_count_cross_directory_deps_all_same_dir ... ok
[INFO] [stdout] test layout::tests::test_count_cross_directory_deps_missing_path ... ok
[INFO] [stdout] test layout::tests::test_compute_what_if_shows_improvement ... ok
[INFO] [stdout] test layout::tests::test_count_layering_violations_missing_layer_info ... ok
[INFO] [stdout] test layout::tests::test_count_layering_violations_with_cycle ... ok
[INFO] [stdout] test layout::tests::test_count_layering_violations_with_manual_layers ... ok
[INFO] [stdout] test layout::tests::test_count_layering_violations_dag_no_violations ... ok
[INFO] [stdout] test layout::tests::test_merge_graph_adds_prefixed_edges ... ok
[INFO] [stdout] test layout::tests::test_project_name_from_paths ... ok
[INFO] [stdout] test layout::tests::test_project_name_from_cwd ... ok
[INFO] [stdout] test rules::tests::test_print_rules ... ok
[INFO] [stdout] test rules::tests::test_rule_spec_fields ... ok
[INFO] [stdout] test rules::tests::test_rules_functions_no_panic ... ok
[INFO] [stdout] test layout::tests::test_merge_graph_adds_prefixed_nodes ... ok
[INFO] [stdout] test layout::tests::test_layout_options_struct_fields ... ok
[INFO] [stdout] test show_tests::tests::static_coverage_touch_gather_files_with_path_expansion ... ok
[INFO] [stdout] test rules::tests::static_coverage_touch_rule_spec_type ... ok
[INFO] [stdout] test rules::tests::test_threshold_value_format ... ok
[INFO] [stdout] test rules::tests::test_run_config_and_print_config ... ok
[INFO] [stdout] test show_tests::tests::test_defs_from_analysis_rows_direct ... ok
[INFO] [stdout] test show_tests::tests::test_format_covering_tests_empty ... ok
[INFO] [stdout] test show_tests::tests::test_helper_coverage ... ok
[INFO] [stdout] test bin_cli::gates_shrink::test_shrink_helper_functions ... ok
[INFO] [stdout] test analyze::tests_smoke::test_run_analyze_no_files ... ok
[INFO] [stdout] test layout::tests::test_run_layout_to_file ... ok
[INFO] [stdout] test viz::tests::test_build_rs_graph_empty ... ok
[INFO] [stdout] test viz::tests::test_clamp_zoom ... ok
[INFO] [stdout] test viz::tests::test_build_py_graph_empty ... ok
[INFO] [stdout] test layout::tests::test_run_layout_no_files_error ... ok
[INFO] [stdout] test viz::tests::test_collect_graph_nodes_and_edges ... ok
[INFO] [stdout] test viz::tests::test_dot_escape_escapes_backslashes_and_quotes ... ok
[INFO] [stdout] test viz::tests::test_mermaid_escape_label ... ok
[INFO] [stdout] test viz::tests::test_mermaid_node_id ... ok
[INFO] [stdout] test viz::tests::test_run_viz_errors_on_no_source_files ... ok
[INFO] [stdout] test viz::tests::test_combined_node_key ... ok
[INFO] [stdout] test viz::tests::test_viz_format_for_path ... ok
[INFO] [stdout] test viz::tests::test_write_coarsened_for_format ... ok
[INFO] [stdout] test viz::tests::test_write_format_header_footer ... ok
[INFO] [stdout] test viz::tests::test_node_label_includes_path_when_present ... ok
[INFO] [stdout] test viz::tests::test_touch_coarsened_helpers_for_static_coverage ... ok
[INFO] [stdout] test viz::tests::test_write_graph_dot_writes_stable_nodes_and_edges ... ok
[INFO] [stdout] test viz::tests::test_write_graph_for_format ... ok
[INFO] [stdout] test viz::tests::test_write_graph_mermaid_writes_nodes_and_edges ... ok
[INFO] [stdout] test viz_coarsen::tests::test_fast_communities_assigns_all_nodes ... ok
[INFO] [stdout] test show_tests::tests::test_show_tests_python_with_untested ... ok
[INFO] [stdout] test viz_coarsen::tests::test_should_use_fast_coarsen_regressions ... ok
[INFO] [stdout] test analyze::tests_smoke::test_gather_parse_and_graphs ... ok
[INFO] [stdout] test viz_coarsen::tests::test_choose_prefix_depth_and_group_nodes ... ok
[INFO] [stdout] test show_tests::tests::test_show_tests_rust ... ok
[INFO] [stdout] test show_tests::tests::test_covered_by_fixture_empty_covering_list ... ok
[INFO] [stdout] test show_tests::tests::test_show_tests_python ... ok
[INFO] [stdout] test viz_coarsen::tests::test_touch_privates_for_static_coverage_part1 ... ok
[INFO] [stdout] test viz_coarsen::tests::test_touch_privates_for_static_coverage_part2 ... ok
[INFO] [stdout] test show_tests::tests::test_python_test_class_format ... ok
[INFO] [stdout] test bin_cli::gates_core::test_gather_stats_normalize_validate ... ok
[INFO] [stdout] test show_tests::tests::test_show_tests_path_outside_universe ... ok
[INFO] [stdout] test show_tests::tests::test_one_function_covered_by_multiple_tests ... ok
[INFO] [stdout] test show_tests::tests::test_test_line_format_stability ... ok
[INFO] [stdout] test show_tests::tests::test_one_test_covers_multiple_functions ... ok
[INFO] [stdout] test bin_cli::gates_core::test_run_stats_and_mimic ... ok
[INFO] [stdout] test bin_cli::gates_shrink::test_shrink_start_and_check ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 113 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_suite.rs (/opt/rustwide/target/debug/deps/integration_suite-1d745153374ed187)
[INFO] [stdout] 
[INFO] [stdout] running 241 tests
[INFO] [stdout] test break_c2_test_coverage::c2_cov_5_compound_cfg_test_bypasses_detection ... ok
[INFO] [stdout] test break_c2_test_coverage::c2_cov_4_nested_function_definitions_excluded ... ok
[INFO] [stdout] test break_c2_test_coverage::c2_cov_2_framework_import_reclassifies_production_as_test ... ok
[INFO] [stdout] test break_c2_orphans::c2_break_4_type_checking_only_import_makes_module_invisible ... ok
[INFO] [stdout] test break_c2_orphans::c2_break_5_absolute_path_truncation_creates_qualified_name_collision ... ok
[INFO] [stdout] test break_c2_orphans::c2_break_3_many_cross_package_importers_all_fail_on_ambiguous_suffix ... ok
[INFO] [stdout] test cli_integration::cli_help_flag_works ... ok
[INFO] [stdout] test break_c2_orphans::c2_break_1_empty_init_py_is_falsely_orphaned ... ok
[INFO] [stdout] test break_c2_test_coverage::c2_cov_3_test_helper_refs_outside_test_scope_invisible ... ok
[INFO] [stdout] test break_c2_test_coverage::c2_cov_1_bare_name_collision_inflates_coverage ... ok
[INFO] [stdout] test break_c2_orphans::c2_break_2_ambiguous_dotted_suffix_skips_parent_fallback ... ok
[INFO] [stdout] test cli_integration::cli_init_does_not_overwrite_existing_config ... ok
[INFO] [stdout] test cli_integration::cli_init_writes_default_config_in_current_directory ... ok
[INFO] [stdout] test cli_integration::cli_mv_requires_query_shape ... ok
[INFO] [stdout] test cli_integration::cli_stats_all_does_not_consume_path_as_n ... ok
[INFO] [stdout] test cli_integration::cli_analyze_reports_violations_on_god_class ... ok
[INFO] [stdout] test cli_integration::cli_mv_json_emits_stable_schema ... ok
[INFO] [stdout] test cli_integration::cli_mv_dry_run_emits_human_plan_lines ... ok
[INFO] [stdout] test cli_integration::cli_analyze_runs_on_python ... ok
[INFO] [stdout] test cli_integration::cli_stats_all_uses_metric_registry_display_names ... ok
[INFO] [stdout] test cache_integration::check_all_cache_hit_replays_without_reading_sources ... ok
[INFO] [stdout] test cli_integration::cli_invalid_lang_reports_error ... ok
[INFO] [stdout] test config_tests::default_config_has_reasonable_values ... ok
[INFO] [stdout] test config_tests::test_config_language_enum ... ok
[INFO] [stdout] test config_tests::default_config_toml_matches_requested_defaults ... ok
[INFO] [stdout] test config_tests::test_config_struct_fields ... ok
[INFO] [stdout] test config_tests::test_gate_config_defaults ... ok
[INFO] [stdout] test cli_integration::cli_version_flag_works ... ok
[INFO] [stdout] test cli_integration::cli_stats_summary_includes_lines_per_file ... ok
[INFO] [stdout] test config_tests::test_load_from_content ... ok
[INFO] [stdout] test config_tests::test_load_from_for_language ... ok
[INFO] [stdout] test config_tests::test_load_for_language ... ok
[INFO] [stdout] test config_tests::test_load_returns_config ... ok
[INFO] [stdout] test config_tests::test_load_from_nonexistent ... ok
[INFO] [stdout] test config_tests::test_gate_config_load ... ok
[INFO] [stdout] test cli_integration::cli_on_empty_directory ... ok
[INFO] [stdout] test cli_integration::cli_viz_rejects_unknown_output_extension ... ok
[INFO] [stdout] test fix_h5_phantom_orphans::different_paths_still_flags_real_orphan ... ok
[INFO] [stdout] test fix_h5_phantom_orphans::same_path_two_module_names_no_phantom_orphan ... ok
[INFO] [stdout] test config_tests::test_is_similar ... ok
[INFO] [stdout] test fix_h1_error_nodes::error_functions_excluded_from_violation_counts ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_02_type_checking_imports_excluded_from_file_metrics ... ok
[INFO] [stdout] test cli_integration::cli_stats_command_runs ... ok
[INFO] [stdout] test fix_h1_error_nodes::function_with_syntax_error_sets_has_error_flag ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_03_return_expression_list_counts_values ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_07_elif_counts_as_branch ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_06_decorator_counting ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_04_from_import_counts_imported_symbols ... ok
[INFO] [stdout] test fix_h1_error_nodes::function_without_syntax_error_has_no_error_flag ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_09_interface_type_detection_protocol_in_args ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_05_typed_boolean_defaults_counted ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_10_parenthesized_tuple_return_counts_elements ... ignored, Documented historical bug; keep for reference
[INFO] [stdout] test journal_hypotheses::hypothesis_08_try_block_statements_are_try_body_only ... ok
[INFO] [stdout] test cli_integration::cli_with_lang_filter_python ... ok
[INFO] [stdout] test cli_integration::cli_viz_zoom_zero_collapses_to_one_node ... ok
[INFO] [stdout] test journal_hypotheses::hypothesis_01_import_not_a_statement ... ok
[INFO] [stdout] test kpop_definitions::bug_lazy_import_should_create_graph_edge_and_prevent_orphan ... ok
[INFO] [stdout] test kpop_definitions::bug_graph_node_definition_should_exclude_external_imports ... ok
[INFO] [stdout] test kpop_definitions::bug_statement_definition_should_exclude_nested_function_bodies ... ok
[INFO] [stdout] test cli_integration::cli_mimic_command_runs ... ok
[INFO] [stdout] test kpop_python_function_metrics::bug_methods_per_class_counts_both_sync_and_async ... ok
[INFO] [stdout] test kpop_definitions::kpop_orphan_module_dynamic_import_importlib_import_module_string_literal ... ok
[INFO] [stdout] test kpop_definitions::bug_graph_edge_dotted_import_should_create_internal_edge ... ok
[INFO] [stdout] test cli_integration::cli_viz_zoom_near_one_is_not_collapsed ... ok
[INFO] [stdout] test kpop_definitions::kpop_code_unit_definition_no_bug_found_in_10_hypotheses ... ok
[INFO] [stdout] test cli_integration::cli_viz_writes_dot_file ... ok
[INFO] [stdout] test kpop_python_graph_metrics::bug_indirect_dependencies_should_not_count_external_modules ... ok
[INFO] [stdout] test kpop_definitions::kpop_orphan_module_ambiguous_bare_name_relative_import_should_resolve_to_same_package ... ok
[INFO] [stdout] test kpop_python_function_metrics::bug_return_values_per_function_parenthesized_tuple_counts_elements ... ok
[INFO] [stdout] test cli_integration::cli_viz_writes_mermaid_file ... ok
[INFO] [stdout] test kpop_python_function_metrics::bug_python_function_metrics_should_not_count_nested_function_bodies ... ok
[INFO] [stdout] test kpop_python_function_metrics::bug_methods_per_class_should_count_async_methods ... ok
[INFO] [stdout] test cli_integration::cli_with_lang_filter_rust ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_functions_per_file ... ok
[INFO] [stdout] test kpop_python_function_metrics::bug_positional_args_should_count_varargs_parameter ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_imported_names_per_file ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_interface_and_concrete_types_per_file ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_methods_per_class ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_keyword_only_args ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_boolean_parameters ... ok
[INFO] [stdout] test kpop_definitions::kpop_orphan_module_relative_import_two_dots_should_resolve_parent_package ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_decorators_per_function ... ok
[INFO] [stdout] test cli_integration::cli_viz_writes_markdown_file ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_statements_per_try_block ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_nested_function_depth ... ok
[INFO] [stdout] test kpop_rust_counts_metrics::bug_rust_methods_per_class_violation_metric_id_mismatch ... ok
[INFO] [stdout] test kpop_rust_file_metrics_plan::kpop_plan_cfg_test_mod_skipped_in_file_metrics ... ok
[INFO] [stdout] test kpop_python_none_graph_and_gates::kpop_python_none_cycle_size ... ok
[INFO] [stdout] test kpop_python_none_graph_and_gates::kpop_python_none_dependency_depth ... ok
[INFO] [stdout] test kpop_definitions::kpop_orphan_module_lazy_imports_try_to_break_it_in_10_ways ... ok
[INFO] [stdout] test kpop_rust_function_metrics::bug_rust_local_variables_should_count_typed_tuple_pattern_bindings ... ok
[INFO] [stdout] test kpop_rust_graph_metrics::bug_orphan_module_should_not_flag_include_macro_in_rust ... ok
[INFO] [stdout] test kpop_python_none::kpop_python_none_statements_per_file ... ok
[INFO] [stdout] test kpop_rust_graph_metrics::bug_rust_indirect_dependencies_should_not_count_external_imports ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_attributes_per_function ... ok
[INFO] [stdout] test kpop_rust_graph_metrics::bug_orphan_module_should_not_flag_crate_use_imports_in_rust ... ok
[INFO] [stdout] test kpop_rust_file_metrics_plan::kpop_plan_nested_mod_file_metrics_matches_collect_rust ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_calls_per_function ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_arguments_per_function ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_max_indentation_depth_and_branches ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_boolean_parameters ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_nested_function_depth ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_statements_per_function ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_returns_per_function ... ok
[INFO] [stdout] test kpop_python_none_graph_and_gates::kpop_python_none_test_coverage_threshold ... ok
[INFO] [stdout] test kpop_rust_none_graph_and_gates::kpop_rust_none_test_coverage_threshold ... ok
[INFO] [stdout] test kpop_rust_none_graph_and_gates::kpop_rust_none_cycle_size ... ok
[INFO] [stdout] test kpop_rust_none::kpop_rust_none_file_metrics_counts ... ok
[INFO] [stdout] test lib_integration::computes_function_metrics ... ok
[INFO] [stdout] test lib_integration::extracts_code_units_from_clean_utils ... ok
[INFO] [stdout] test kpop_rust_none_graph_and_gates::kpop_rust_none_dependency_depth ... ok
[INFO] [stdout] test kpop_python_none_graph_and_gates::kpop_python_none_min_similarity ... ok
[INFO] [stdout] test lib_integration::analyze_empty_python_file_no_violations ... ok
[INFO] [stdout] test lib_integration::analyze_empty_rust_file_no_violations ... ok
[INFO] [stdout] test lib_integration::handles_empty_python_file ... ok
[INFO] [stdout] test kpop_rust_none_graph_and_gates::kpop_rust_none_min_similarity ... ok
[INFO] [stdout] test lib_integration::handles_empty_rust_file ... ok
[INFO] [stdout] test lib_integration::repro_orphan_module_with_dotted_import_and_ambiguous_bare_name ... ok
[INFO] [stdout] test main_integration::test_build_graphs_empty ... ok
[INFO] [stdout] test lib_integration::detects_duplicate_code ... ok
[INFO] [stdout] test main_integration::test_config_merge ... ok
[INFO] [stdout] test kpop_show_tests_bug::kpop_show_tests_path_outside_universe_produces_output ... ok
[INFO] [stdout] test main_integration::test_analyze_graph_empty ... ok
[INFO] [stdout] test lib_integration::returns_empty_for_nonexistent_directory ... ok
[INFO] [stdout] test lib_integration::parses_python_file_successfully ... ok
[INFO] [stdout] test lib_integration::finds_python_files_in_test_directory ... ok
[INFO] [stdout] test lib_integration::computes_cyclomatic_complexity ... ok
[INFO] [stdout] test lib_integration::extracts_many_methods_from_god_class ... ok
[INFO] [stdout] test main_integration::test_detect_duplicates_empty ... ok
[INFO] [stdout] test main_integration::test_parse_and_analyze_empty ... ok
[INFO] [stdout] test main_integration::test_write_mimic_config ... ok
[INFO] [stdout] test py_metrics_tests::test_boolean_parameters ... ok
[INFO] [stdout] test lib_integration::computes_class_metrics_for_god_class ... ok
[INFO] [stdout] test main_integration::test_is_focus_file ... ok
[INFO] [stdout] test main_integration::test_print_functions_no_panic ... ok
[INFO] [stdout] test lib_integration::computes_file_metrics_for_god_class ... ok
[INFO] [stdout] test py_metrics_tests::test_class_metrics_struct ... ok
[INFO] [stdout] test py_metrics_tests::test_class_metrics ... ok
[INFO] [stdout] test main_integration::test_print_helpers_no_panic ... ok
[INFO] [stdout] test py_metrics_tests::test_count_node_kind ... ok
[INFO] [stdout] test py_metrics_tests::test_file_metrics ... ok
[INFO] [stdout] test py_metrics_tests::test_class_metrics_two_methods ... ok
[INFO] [stdout] test py_metrics_tests::test_keyword_only_args ... ok
[INFO] [stdout] test py_metrics_tests::test_function_metrics ... ok
[INFO] [stdout] test py_metrics_tests::test_decorators ... ok
[INFO] [stdout] test py_metrics_tests::test_from_import_counts ... ok
[INFO] [stdout] test main_integration::test_coverage_gate_blocks_untested_code ... ok
[INFO] [stdout] test py_metrics_tests::test_lazy_imports ... ok
[INFO] [stdout] test python_counts_violations::test_statements_per_try_block_violation ... ok
[INFO] [stdout] test py_metrics_tests::test_try_block_statements ... ok
[INFO] [stdout] test python_counts_violations::test_boolean_parameters_violation ... ok
[INFO] [stdout] test lib_integration::builds_dependency_graph ... ok
[INFO] [stdout] test python_counts_violations::test_lines_per_file_violation ... ok
[INFO] [stdout] test python_counts_violations::test_methods_per_class_violation ... ok
[INFO] [stdout] test py_metrics_tests::test_nested_try_blocks ... ok
[INFO] [stdout] test main_integration::test_coverage_gate_passes_with_tests ... ok
[INFO] [stdout] test lib_integration::parses_all_test_files_without_errors ... ok
[INFO] [stdout] test main_integration::test_collect_stats_empty ... ok
[INFO] [stdout] test rules_config_integration::cli_config_shows_effective_configuration ... ok
[INFO] [stdout] test rules_config_integration::cli_config_shows_python_specific_settings ... ok
[INFO] [stdout] test rules_config_integration::cli_config_shows_rust_specific_settings ... ok
[INFO] [stdout] test rules_config_integration::cli_config_command_runs ... ok
[INFO] [stdout] test rules_config_integration::cli_config_shows_gate_settings ... ok
[INFO] [stdout] test rules_config_integration::cli_config_with_defaults_flag ... ok
[INFO] [stdout] test rules_config_integration::cli_config_nonexistent_file_warns ... ok
[INFO] [stdout] test rules_config_integration::cli_config_with_custom_file ... ok
[INFO] [stdout] test rust_counts_violations::test_arguments_per_function_violation ... ok
[INFO] [stdout] test rust_counts_violations::test_branches_per_function_violation ... ok
[INFO] [stdout] test main_integration::test_build_focus_set ... ok
[INFO] [stdout] test rules_config_integration::cli_rules_filter_rust_only ... ok
[INFO] [stdout] test rules_config_integration::cli_rules_command_runs ... ok
[INFO] [stdout] test rules_config_integration::cli_rules_shows_both_languages_by_default ... ok
[INFO] [stdout] test rules_config_integration::cli_rules_with_custom_config_file ... ok
[INFO] [stdout] test rust_counts_violations::test_imported_names_per_file_violation ... ok
[INFO] [stdout] test rust_counts_violations::test_max_indentation_depth_violation ... ok
[INFO] [stdout] test main_integration::test_gather_files_all_and_filtered ... ok
[INFO] [stdout] test rules_config_integration::cli_rules_filter_python_only ... ok
[INFO] [stdout] test rust_counts_violations::test_types_per_file_violation ... ok
[INFO] [stdout] test rust_counts_violations::test_lines_per_file_violation ... ok
[INFO] [stdout] test rust_counts_violations::test_local_variables_per_function_violation ... ok
[INFO] [stdout] test rust_counts_violations::test_returns_per_function_violation ... ok
[INFO] [stdout] test rust_counts_violations::test_nested_closure_depth_violation ... ok
[INFO] [stdout] test rules_config_integration::cli_rules_shows_key_thresholds ... ok
[INFO] [stdout] test stress_break_kiss::h1_unclosed_string_corrupts_entire_function ... ok
[INFO] [stdout] test rules_config_integration::cli_rules_with_defaults_flag ... ok
[INFO] [stdout] test stress_break_kiss::h1_syntax_error_in_function_body_still_produces_metrics ... ok
[INFO] [stdout] test rust_counts_violations::test_statements_per_file_violation ... ok
[INFO] [stdout] test stress_break_kiss::h1_error_node_in_return_corrupts_return_value_count ... ok
[INFO] [stdout] test rust_counts_violations::test_statements_per_function_violation ... ok
[INFO] [stdout] test stress_break_kiss::h2_numeric_normalization_creates_false_duplicates ... ok
[INFO] [stdout] test stress_break_kiss::h5_same_file_two_paths_in_graph ... ok
[INFO] [stdout] test stress_break_kiss::h2_single_variable_rename_drops_similarity ... ok
[INFO] [stdout] test symbol_mv_regressions::mv_rejects_mismatched_lang_filter ... ok
[INFO] [stdout] test stress_break_kiss::h4_long_chain_graph_200_deep ... ok
[INFO] [stdout] test stress_break_kiss::h6_factory_closure_not_self_duplicate ... ok
[INFO] [stdout] test stress_break_kiss::h3_deeply_nested_indentation ... ok
[INFO] [stdout] test symbol_mv_regressions::applies_rename ... ok
[INFO] [stdout] test symbol_mv_regressions::overlap_fails ... ok
[INFO] [stdout] test symbol_mv_regressions::parse_python_function_query ... ok
[INFO] [stdout] test symbol_mv_regressions::parse_rust_method_query ... ok
[INFO] [stdout] test stress_break_kiss::h3_function_with_100_return_statements ... ok
[INFO] [stdout] test kpop_definitions::kpop_file_definition_no_bug_found_in_10_hypotheses ... ok
[INFO] [stdout] test stress_break_kiss::h3_file_with_500_functions ... ok
[INFO] [stdout] test stress_break_kiss::h2_duplication_pipeline_with_near_identical_functions ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_method_move_should_be_rejected ... ok
[INFO] [stdout] test symbol_mv_regressions::mv_json_mode_is_valid_json ... ok
[INFO] [stdout] test symbol_mv_regressions::plan_edits_builds_request_from_public_types ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_move_rename_should_keep_rust_attributes_visibility_and_comments ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_move_rename_should_update_recursive_calls ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_mv_json_without_dry_run_applies_edits ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_python_method_should_not_rename_other_types_in_other_files ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_class_scoping_should_use_exact_match ... ok
[INFO] [stdout] test stress_break_kiss::h3_function_with_1000_statements ... ok
[INFO] [stdout] test stress_break_kiss::h4_fully_connected_graph_100_nodes ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_move_to_destination_should_not_move_unrelated_source_statements ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_move_rename_should_move_python_decorators_and_preserve_literals ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_move_to_destination_should_relocate_definition ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_python_method_rename_should_respect_owner ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_python_triple_quoted_string_with_embedded_quote_should_not_rename ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_python_method_should_scope_to_class ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_await_expression ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_move_rename_should_not_touch_comments_or_strings ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_del_statement ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_nonlocal_binding ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_global_binding_in_same_file ... ok
[INFO] [stdout] test symbol_mv_regressions::reject_bad_queries ... ok
[INFO] [stdout] test symbol_mv_regressions::validate_new_name_rules ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rust_method_owner_scoping_should_use_exact_impl_match ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_updates_multiline_parenthesized_from_import ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_raise_from_exception_cause ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_should_rename_references_in_other_files_within_paths ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_updates_parenthesized_from_import ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_updates_backslash_continued_from_import ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rust_method_query_should_not_rename_other_types ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_toplevel_rename_should_not_touch_method_calls ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rust_move_should_not_break_on_brace_inside_string_literal ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rust_char_literal_with_double_quote_should_not_break_lexer ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rust_raw_string_with_embedded_quotes_should_not_rename ... ok
[INFO] [stdout] test symbol_mv_regressions::regression_rename_updates_backslash_inside_parenthesized_from_import ... ok
[INFO] [stdout] test cache_integration::check_all_cache_invalidates_on_mtime_or_size_change ... FAILED
[INFO] [stdout] test regression_check_perf::check_path_skips_coverage_map_and_stays_fast ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- cache_integration::check_all_cache_invalidates_on_mtime_or_size_change stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache_integration::check_all_cache_invalidates_on_mtime_or_size_change' (1279) panicked at tests/cases/cache_integration.rs:138:5:
[INFO] [stdout] assertion `left != right` failed: after source change, cached output must not be replayed.
[INFO] [stdout] --stdout1--
[INFO] [stdout] Analyzed: 1 files, 2 code_units, 1 statements, 1 graph_nodes, 0 graph_edges
[INFO] [stdout] VIOLATION:test_coverage:/tmp/.tmp6kD721/simple.py:1:foo: 0% covered. Add test coverage for this code unit. No test module imports this module. Add an import in a test file, or remove if dead.
[INFO] [stdout] 
[INFO] [stdout] --stdout2--
[INFO] [stdout] Analyzed: 1 files, 2 code_units, 1 statements, 1 graph_nodes, 0 graph_edges
[INFO] [stdout] VIOLATION:test_coverage:/tmp/.tmp6kD721/simple.py:1:foo: 0% covered. Add test coverage for this code unit. No test module imports this module. Add an import in a test file, or remove if dead.
[INFO] [stdout] 
[INFO] [stdout]   left: "Analyzed: 1 files, 2 code_units, 1 statements, 1 graph_nodes, 0 graph_edges\nVIOLATION:test_coverage:/tmp/.tmp6kD721/simple.py:1:foo: 0% covered. Add test coverage for this code unit. No test module imports this module. Add an import in a test file, or remove if dead.\n"
[INFO] [stdout]  right: "Analyzed: 1 files, 2 code_units, 1 statements, 1 graph_nodes, 0 graph_edges\nVIOLATION:test_coverage:/tmp/.tmp6kD721/simple.py:1:foo: 0% covered. Add test coverage for this code unit. No test module imports this module. Add an import in a test file, or remove if dead.\n"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x63790453a31a - std[1209cfb42f6d497f]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x63790453a31a - std[1209cfb42f6d497f]::backtrace_rs::backtrace::trace_unsynchronized::<std[1209cfb42f6d497f]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x63790453a31a - std[1209cfb42f6d497f]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x63790453a31a - <<std[1209cfb42f6d497f]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[4a92201981c6b77a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x63790455083a - <core[4a92201981c6b77a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x63790455083a - core[4a92201981c6b77a]::fmt::write
[INFO] [stdout]    6:     0x63790453ef82 - std[1209cfb42f6d497f]::io::default_write_fmt::<alloc[420bb310a727dfd7]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x63790453ef82 - <alloc[420bb310a727dfd7]::vec::Vec<u8> as std[1209cfb42f6d497f]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x6379045161cf - <std[1209cfb42f6d497f]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x6379045161cf - std[1209cfb42f6d497f]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x637904531449 - std[1209cfb42f6d497f]::panicking::default_hook
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x6379040ea38c - <alloc[420bb310a727dfd7]::boxed::Box<dyn for<'a, 'b> core[4a92201981c6b77a]::ops::function::Fn<(&'a std[1209cfb42f6d497f]::panic::PanicHookInfo<'b>,), Output = ()> + core[4a92201981c6b77a]::marker::Sync + core[4a92201981c6b77a]::marker::Send> as core[4a92201981c6b77a]::ops::function::Fn<(&std[1209cfb42f6d497f]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   12:     0x6379040ea38c - test[59e67a9bc0e119f1]::test_main_inner::<test[59e67a9bc0e119f1]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x6379045316c2 - <alloc[420bb310a727dfd7]::boxed::Box<dyn for<'a, 'b> core[4a92201981c6b77a]::ops::function::Fn<(&'a std[1209cfb42f6d497f]::panic::PanicHookInfo<'b>,), Output = ()> + core[4a92201981c6b77a]::marker::Sync + core[4a92201981c6b77a]::marker::Send> as core[4a92201981c6b77a]::ops::function::Fn<(&std[1209cfb42f6d497f]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   14:     0x6379045316c2 - std[1209cfb42f6d497f]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x637904516288 - std[1209cfb42f6d497f]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x63790450b1a9 - std[1209cfb42f6d497f]::sys::backtrace::__rust_end_short_backtrace::<std[1209cfb42f6d497f]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x63790451702d - __rustc[4effac393e9f3da6]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x63790455103c - core[4a92201981c6b77a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x637904550f53 - core[4a92201981c6b77a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/panicking.rs:434:23
[INFO] [stdout]   20:     0x6379040dd151 - core[4a92201981c6b77a]::panicking::assert_failed::<alloc[420bb310a727dfd7]::string::String, alloc[420bb310a727dfd7]::string::String>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x6379040ace8a - integration_suite[9f2824506117526d]::cache_integration::check_all_cache_invalidates_on_mtime_or_size_change
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cases/cache_integration.rs:138:5
[INFO] [stdout]   22:     0x6379040ce8a9 - integration_suite[9f2824506117526d]::cache_integration::check_all_cache_invalidates_on_mtime_or_size_change::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cases/cache_integration.rs:99:57
[INFO] [stdout]   23:     0x6379040ce8a9 - <integration_suite[9f2824506117526d]::cache_integration::check_all_cache_invalidates_on_mtime_or_size_change::{closure#0} as core[4a92201981c6b77a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x6379040dd66b - <fn() -> core[4a92201981c6b77a]::result::Result<(), alloc[420bb310a727dfd7]::string::String> as core[4a92201981c6b77a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x6379040dd66b - test[59e67a9bc0e119f1]::__rust_begin_short_backtrace::<core[4a92201981c6b77a]::result::Result<(), alloc[420bb310a727dfd7]::string::String>, fn() -> core[4a92201981c6b77a]::result::Result<(), alloc[420bb310a727dfd7]::string::String>>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x6379040eae5b - test[59e67a9bc0e119f1]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x6379040eae5b - <core[4a92201981c6b77a]::panic::unwind_safe::AssertUnwindSafe<test[59e67a9bc0e119f1]::run_test_in_process::{closure#0}> as core[4a92201981c6b77a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x6379040eae5b - std[1209cfb42f6d497f]::panicking::catch_unwind::do_call::<core[4a92201981c6b77a]::panic::unwind_safe::AssertUnwindSafe<test[59e67a9bc0e119f1]::run_test_in_process::{closure#0}>, core[4a92201981c6b77a]::result::Result<(), alloc[420bb310a727dfd7]::string::String>>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x6379040eae5b - std[1209cfb42f6d497f]::panicking::catch_unwind::<core[4a92201981c6b77a]::result::Result<(), alloc[420bb310a727dfd7]::string::String>, core[4a92201981c6b77a]::panic::unwind_safe::AssertUnwindSafe<test[59e67a9bc0e119f1]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x6379040eae5b - std[1209cfb42f6d497f]::panic::catch_unwind::<core[4a92201981c6b77a]::panic::unwind_safe::AssertUnwindSafe<test[59e67a9bc0e119f1]::run_test_in_process::{closure#0}>, core[4a92201981c6b77a]::result::Result<(), alloc[420bb310a727dfd7]::string::String>>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x6379040eae5b - test[59e67a9bc0e119f1]::run_test_in_process
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x6379040eae5b - test[59e67a9bc0e119f1]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x6379040e4574 - test[59e67a9bc0e119f1]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x6379040e4574 - std[1209cfb42f6d497f]::sys::backtrace::__rust_begin_short_backtrace::<test[59e67a9bc0e119f1]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x6379040eda62 - std[1209cfb42f6d497f]::thread::lifecycle::spawn_unchecked::<test[59e67a9bc0e119f1]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x6379040eda62 - <core[4a92201981c6b77a]::panic::unwind_safe::AssertUnwindSafe<std[1209cfb42f6d497f]::thread::lifecycle::spawn_unchecked<test[59e67a9bc0e119f1]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[4a92201981c6b77a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x6379040eda62 - std[1209cfb42f6d497f]::panicking::catch_unwind::do_call::<core[4a92201981c6b77a]::panic::unwind_safe::AssertUnwindSafe<std[1209cfb42f6d497f]::thread::lifecycle::spawn_unchecked<test[59e67a9bc0e119f1]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x6379040eda62 - std[1209cfb42f6d497f]::panicking::catch_unwind::<(), core[4a92201981c6b77a]::panic::unwind_safe::AssertUnwindSafe<std[1209cfb42f6d497f]::thread::lifecycle::spawn_unchecked<test[59e67a9bc0e119f1]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x6379040eda62 - std[1209cfb42f6d497f]::panic::catch_unwind::<core[4a92201981c6b77a]::panic::unwind_safe::AssertUnwindSafe<std[1209cfb42f6d497f]::thread::lifecycle::spawn_unchecked<test[59e67a9bc0e119f1]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x6379040eda62 - std[1209cfb42f6d497f]::thread::lifecycle::spawn_unchecked::<test[59e67a9bc0e119f1]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x6379040eda62 - <std[1209cfb42f6d497f]::thread::lifecycle::spawn_unchecked<test[59e67a9bc0e119f1]::run_test::{closure#1}, ()>::{closure#1} as core[4a92201981c6b77a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x6379045396ff - <alloc[420bb310a727dfd7]::boxed::Box<dyn core[4a92201981c6b77a]::ops::function::FnOnce<(), Output = ()> + core[4a92201981c6b77a]::marker::Send> as core[4a92201981c6b77a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/alloc/src/boxed.rs:2271:9
[INFO] [stdout]   43:     0x6379045396ff - <std[1209cfb42f6d497f]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/f9988fefd3add01f414f52b414308e7872622fee/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x70e60191baa4 - <unknown>
[INFO] [stdout]   45:     0x70e6019a8a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     cache_integration::check_all_cache_invalidates_on_mtime_or_size_change
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 239 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.72s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test integration_suite`
[INFO] running `Command { std: "docker" "inspect" "8786f0c1d0294714f93c89e851a37f7e01aa3f64b4fa725ccb8cc4eb3a71b644", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8786f0c1d0294714f93c89e851a37f7e01aa3f64b4fa725ccb8cc4eb3a71b644", kill_on_drop: false }`
[INFO] [stdout] 8786f0c1d0294714f93c89e851a37f7e01aa3f64b4fa725ccb8cc4eb3a71b644
